Protocol specification

Communication with EYE+ takes place via a simple text-based ASCII protocol. The client sends a command, EYE+ responds with a status code followed by a message.

Information: An ASCII command must be followed by a unique control character LF (\n or ASCII code 0x0A) for the line break.

Commands

The command must be written in lower case with underlined separators (e.g. get_parameter). There must be a space between the command and the parameter and between the parameter and the value. You can find all available commands in the Commands section.

Copy
Without parameter or value
<command>\n
Copy
with parameter but without value
<command>_<parameter>\n
Copy
with parameter but value
<command>_<parameter>_<value>\n

Answer

The server responds to each command from the client with a code that informs the client about the status of the command. The response always takes place in the same way:

Copy
<response_code>␣<further information>\n

If the response contains more than one line, the number of lines is added after <response_code>.

Copy
<response_code>␣<n>␣<further information>\n
<further information>\n
...
<further information>\n
Answer-Codes
<response_code> (ASCII) Description
200 The command was executed successfully
201 <n> The command was executed successfully and contains <n> lines in the output
4xx Error from client (invalid parameters, command not permitted in current state,...)
5xx Error from server (image acquisition timeout, calibration invalid, ...)

Error codes

In the event of an error, the error code is followed by a clear description of the error.

Error-Codes
ASCII Description
401 The command received is unknown.
402 The specified argument is not valid for this command.
403 The system is not in production status. Make sure that a recipe has been started in production.
407 The requested programme was not found. Check the selected programme number.
409 The system is not in a valid state.
503 Timeout reached.
519 Calibration invalid. Check camera and robot calibration.
597 Internal error in the image processing sequence.